#define _CRT_SECURE_NO_WARNINGS

//#include <iostream>
//#include<algorithm>
//using namespace std;
//
//const int N = 2e5 + 10;
//int a[N];
//
//int main()
//{
//    int n;
//    cin >> n;
//
//    long long ans = 0;
//    for (int i = 0; i < 2 * n; i++)
//    {
//        cin >> a[i];
//    }
//    sort(a, a + 2 * n);
//
//    for (int i = 0; i < 2 * n / 2; i++)
//    {
//        ans += (a[i] * a[2 * n - i - 1]);
//    }
//    cout << ans << '\n';
//
//    return 0;
//}

// #include<bits/stdc++.h>

#include<iostream>
#include<vector>

#define int long long
using namespace std;

const int N = 1e5 + 10;

signed main()
{
    int n, m;
    cin >> n >> m;
    vector<int> a(n);
    vector<int> b(m);

    for (int i = 0; i < n; i++)
    {
        cin >> a[i];
    }
    for (int i = 0; i < m; i++) cin >> b[i];

    int left = 0, right = 0;
    int count = 0;
    int k = n;
    if (k > m) k = m;

    while (left < k && right < k)
    {
        while (a[left] < b[right])
        {
            a[left] += a[left + 1];
            a.erase(a.begin() + left + 1);
            count++;
        }
        while (a[left] > b[right])
        {
            b[right] += b[right + 1];
            b.erase(b.begin() + right + 1);
            count++;
        }
        if (a[left] = b[right])
        {
            left++;
            right++;
        }
    }

    cout << count << '\n';

    return 0;
}